Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Bulgaria-w2 Bulgaria-w4 Serbia & Montenegro F2 Serbia & Montenegro F4 Bulgaria F2 Bulgaria F3 Spain F32 Portugal F4 Portugal F6 Spain F7 Portugal F2 Portugal F3 Turkey F3 Spain F17 Spain F18 Bulgaria F4 Macedonia F1 Serbia F1 Romania F14 Serbia F3 Serbia F4 Serbia F5 Bulgaria F7 Sweden F5 USA F26 Mexico F10 Mexico F11 USA F1 USA F2 USA F3 Bulgaria F1 Croatia F5 Turkey F4 Turkey F6 Bulgaria F1 Bulgaria F2 Bulgaria F3 Bulgaria F4 Macedonia F2 Serbia F1 Serbia F2 Serbia F3 Serbia F4 Bulgaria F7 Bulgaria F8 Croatia F11 Mexico F1 Egypt F1 Costa Rica F1 Egypt F2 Canada F1 Canada F2 Canada F3 Croatia F3 Croatia F4 Usa F7 Usa F8 Czech Rep. F2 Bulgaria F2 Czech Rep. F3 Bulgaria F3 Spain F18 Bulgaria F4 Serbia F1 Serbia F2 Serbia F3 Usa F14 Usa F15 Usa F18 Serbia F5 Serbia F4 Serbia F7 Bulgaria F7 Iran F7 Iran F8 Usa F5 Portugal F3 Switzerland F3 Turkey F5 Spain F11 Turkey F7 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bosnia & Herzegovina F7 Usa F13 Serbia F1 Usa F15 Serbia F3 Serbia F4 Serbia F5 Serbia F6 Bulgaria F5 Egypt F4 Egypt F5 Brazil F31 Brazil F32 Brazil F33 Brazil F1 Colombia F1 Colombia F2 USA F7 Turkey F9 Turkey F10 Turkey F11 Bulgaria F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Netherlands F1 France F8 France F9 France F11 France F12 Brazil F26 Serbia F7 Serbia F8 Brazil F33 Croatia F13 Egypt F3 Israel F2 Egypt F1 Spain F1 France F7 Italy F11 Italy F13 France F10 Turkey F26 Turkey F27 Italy F19 Serbia F9 Serbia F12 Serbia F13 Serbia F14 Croatia F10 Turkey F43 Turkey F44 Turkey F45 France F2 France F3 Croatia F1 Croatia F5 Croatia F6 France F7 Italy F4 France F9 Italy F11 Serbia F2 Serbia F5 Serbia F11 Bosnia & Herzegovina F4 Croatia F12 Turkey F45 Egypt F3 Egypt F4 France F8 France F9 Bosnia & Herzegovina F1 Bosnia & Herzegovina F3 Italy F17 Serbia F1 Serbia F2 Serbia F3 France F13 Serbia F8 Serbia F10 Serbia F11 Greece F10 Greece F11 Cyprus F1 Cyprus F2 Senegal F1 Sri Lanka F1 Sri Lanka F2 Sri Lanka F3 Turkey F9 France F8 Croatia F8 Croatia F9 Croatia F11 Croatia F12 Serbia F3 Romania F7 Austria F4 Greece F10 Tunisia F33 Tunisia F35 Serbia F4 Tunisia F2 Tunisia F3 China F2 China F3 Tunisia F12 Tunisia F30 Tunisia F8 (Hammamet) Tunisia F9 (Hammamet) Bosnia & Herzegovina F2 (Brcko) Serbia F3 Serbia F4 (Zlatibor) Italy F31 (Santa Margherita Di Pula) Italy F33 (Santa Margherita Di Pula) Italy F34 (Santa Margherita Di Pula) Italy F36 (Santa Margherita Di Pula) Morocco F5 (Beni Mellal) Tunisia F39 (Hammamet) Tunisia F40 (Hammamet) Tunisia F1 (Hammamet) Tunisia F2 (Hammamet) Spain F4 (Paguera (Mallorca)) Spain F5 (Murcia) Tunisia F11 (Hammamet) Italy F5 (Santa Margherita Di Pula) Italy F6 (Santa Margherita Di Pula) Serbia F1 (Novi Sad) Italy F28 (Santa Margherita Di Pula) Italy F29 (Santa Margherita Di Pula) Serbia F7 M15 Monastir M15 Monastir M15 Porec M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M15 Novi Sad M25 Poznan M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15+H Bagnoles-de-l'Orne M25 Lima M15 Sintra M25 Prague M15 Sintra M25 Porto M15 Sharm El Sheikh M25 Vale Do Lobo M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Cairo M15 Cairo M15 Antalya M15 Cairo M15 Cairo M15 Antalya M25 Villena M25 Vale do Lobo M25 Faro M15 Antalya M15 Antalya M25 Vale do Lobo M15 Antalya M15 Antalya M15 Cairo M15 Prijedor M25 Kiseljak M15 Skopje M15 Skopje M25 Grasse M25 Belgrade Bulgaria F1 M15 Antalya Greece F9 M25 Antalya Serbia F1 Portugal F5 Croatia F6 Serbia & Montenegro F1 Macedonia F2 Bosnia/Herzegovina F6 Hungary F2 Portugal F1 Bulgaria F3 Serbia F2 Italy F5 Bosnia & Herzegovina F5 Bosnia & Herzegovina F6 Brazil F22 Bulgaria-w3 Serbia & Montenegro F5 Bulgaria F1 Bulgaria F2 M25 Radomlje Italy F4 Serbia F6 M15 Antalya Colombia F2 M25 Vila Real de Santo Antonio M25 Vale do Lobo Serbia F5 III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Moncton Men's Challenger - Moncton M25 Cairo Challenger Britania Zavaleta - Puebla Croatia F7 Salinas Challenger M25 Vila Real de Santo Antonio Banjaluka Challenger 2007 - Banja Luka M25 Vale do Lobo Banja Luka Challenger M25 Santa Margherita di Pula M25 Porto Campos do Jordao Challenger Brasilia Challenger Belo Horizonte Challenger M15 Bol National Bank Men's Rimouski Challenger - Rimouski M25 Benicarlo M15 Bol Sao Paulo Challenger M25 Figueira da Foz Bucaramanga Challenger M25 Sintra Le Gosier Challenger M25 Reus Campos do Jordao Challenger M15 Monastir M15 Kursumlijska Banja Samarkand Challenger Turkey F10 M15 Pirot Brasov Challenger Ljubljana Challenger Campinas Challenger M15 Antalya JSM Challenger of Champaign - Urbana Belo Horizonte Challenger Sao Leopoldo Challenger Buenos Aires Challenger Guayaquil Challenger Sao Paulo Challenger Marrakech Challenger Le Gosier Challenger Blumenau Challenger Arad Challenger Sao Leopoldo Challenger Santos Challenger Sao Paulo Challenger M15 Antalya Timisoara Challenger Scheveningen Challenger M25 Porec Banja Luka Challenger Campinas Challenger Porto Alegre Challenger Sao Jose Do Rio Preto Challenger Bogota Challenger Guayaquil Challenger Bucaramanga Challenger Barranquilla Challenger Sao Paulo Challenger Abierto Internacional de Salinas 'Dario Expreso' - Salinas Sao Paulo Challenger Blois Challenger Challenger Banque Nationale - Granby Banja Luka Challenger Sony Ericsson Open 2008 - Belgrade Recife Challenger Sibiu Challenger Porto Alegre Challenger Napoli Challenger Charlottesville Challenger Santo Domingo Challenger Savannah Challenger Asuncion Challenger Santiago Challenger Sao Paulo Challenger Roma Open Challenger - Rome San Remo Tennis Cup - San Remo Liberec Challenger Vancouver Challenger Cordenons Challenger Como Challenger Seville Challenger Sibiu Challenger M15 Antalya Rome Challenger Semgroup Challenger - Tulsa Corrientes Challenger Ford Tennis Championships - Louisville Guayaquil Challenger Abierto Internacional Varonil Ciudad de Cancun - Cancun Bangkok Challenger Bucaramanga Challenger Bucaramanga Challenger Belem Challenger China F1 Barletta Challenger Heilbronn Challenger Mestre Challenger Buenos Aires Challenger Dallas Challenger Todi Challenger Portoroz Challenger Sarasota Challenger Nielsen USTA Pro Tennis Championship - Winnetka Rio De Janeiro Challenger Bucaramanga Challenger Barletta Challenger Francavilla Challenger Ostrava Challenger Rome Challenger Turin Challenger Todi Challenger Milan Challenger Braunschweig Challenger Braunschweig Challenger Scheveningen Challenger Cortina Challenger Itajai Challenger Floridablanca Challenger Santo Domingo Challenger Manerbio Challenger Como Challenger Seville Challenger M15 Kursumlijska Banja M15 Kursumlijska Banja Campinas Challenger Buenos Aires Challenger Santiago Challenger Caltanissetta Challenger Sao Paulo Challenger Santiago Challenger Barletta Challenger Montevideo Challenger M25 Skopje Sao Paulo Challenger Dallas Challenger Cordenons Challenger Genova Challenger Seville Challenger Santo Domingo Challenger Barcelona Challenger Montevideo Challenger Aix En Provence Challenger San Luis Potosi Challenger Ljubljana Challenger Marburg Challenger Braunschweig Challenger Montevideo Challenger Lisbon Challenger Kazan Challenger M15 Belgrade Maia Challenger Oeiras 4 Challenger Campinas Challenger Amersfoort Challenger Guayaquil Challenger Oeiras 1 Challenger Barletta Challenger Punta Del Este Challenger Knoxville Challenger M15 Antalya Champaign Challenger Le Gosier Challenger Valencia Challenger Puerto Vallarta Challenger Tunis Challenger Liberec Challenger M25 Quinta Do Lago Poznan Challenger Seville Challenger Braga Challenger M15 Alaminos-Larnaca Mestre Challenger Lisbon Challenger Caltanissetta Challenger Moscow Challenger Tunisia F34 Aptos Challenger Caltanissetta Challenger Lima 2 Challenger Oeiras 1 Challenger Meknes Challenger Banja Luka Challenger M25 Sintra Orlando Challenger Lima Challenger Montevideo Challenger Como Challenger M15 Brcko Napoli Challenger Anning Challenger M25 Kursumlijska Banja Vicenza Challenger Prostejov Challenger Baotou Challenger Blois Challenger Milan Challenger Campinas Challenger Girona Challenger Aix En Provence Challenger M15 Belgrade Oeiras 1 Challenger Liberec Challenger Genova Challenger Banja Luka Challenger Poznan Challenger Mohammedia Challenger Forli 6 Challenger Montechiarugolo - Parma Challenger Braunschweig Challenger Szczecin Challenger San Luis Potosi Challenger Grodzisk Mazowiecki Challenger Bordeaux Challenger Lisbon Challenger Sao Jose Do Rio Preto Challenger Canberra Challenger Florianopolis Challenger Oeiras 1 Challenger Oeiras 4 Challenger Genova Challenger Manama Challenger Almaty Challenger Rabat Challenger Porto Challenger M15 Antalya Montevideo Challenger Rennes Challenger Porto 2 Challenger Maia 1 Challenger M25 Quinta do Lago Levene Gouldin & Thompson Tennis Challenger - Binghamton Madrid Challenger Santos Challenger Samarkand Challenger Guayaquil Challenger Mestre Challenger Sao Paulo Challenger Banja Luka Challenger Pune Challenger Naples Challenger - Naples Lima Challenger Guayaquil Challenger Caltanissetta Challenger Columbus Challenger Newport Beach Challenger Chennai Challenger Bangkok Challenger Yokohama Challenger Iasi Challenger Todi Challenger Sarasota Challenger Francavilla Challenger Lima 2 Challenger Timisoara Challenger Braga Challenger Francavilla Challenger Tampere Challenger Nur-Sultan Challenger Portoroz Challenger St. Remy Challenger Oeiras 2 Challenger M15 Bol Rome 2 Challenger Oeiras 3 Challenger Biella 7 Challenger Forli Challenger Porto Challenger Tampere Challenger San Marino Challenger Verona Challenger Antalya 3 Challenger Maia 2 Challenger Bendigo Challenger Cherbourg Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger Zadar Challenger Oeiras 2 Challenger Split Challenger Heilbronn Challenger Oldum Brown Vancouver Open - Vancouver Perugia Challenger Lyon Challenger Campinas Challenger Cali Challenger Curitiba Challenger Lima Challenger Campinas Challenger St. Tropez Challenger Rio De Janeiro Challenger Ambato Challenger Las Vegas Challenger Lima 2 Challenger Montevideo Challenger Sao Leopoldo Challenger Bordeaux Challenger Maspalomas Challenger Tenerife 2 Challenger Madrid Challenger Ostrava Challenger Prague 2 Challenger Oeiras 2 Challenger Bancolombia Open - Bogota Karlsruhe Challenger Oeiras 3 Challenger Porto Challenger Como Challenger Mallorca Challenger Banja Luka Challenger - Banja Luka Santa Fe 2 Challenger Montevideo Challenger Oeiras 2 Challenger Tenerife 2 Challenger Murcia Challenger Girona Challenger Oeiras 3 Challenger Oeiras 4 Challenger Estoril Open - Estoril Pozoblanco Challenger Oeiras 5 Challenger GHI Bronx Tennis Classic - Bronx Tenerife 1 Challenger Banja Luka Challenger Ann Arbor Challenger Estoril Open - Estoril Barletta Challenger Sacramento Challenger - Sacramento Salvador Challenger Sibiu Challenger Lisbon Challenger Split 1 Challenger Milan Challenger Prague 3 Challenger Recife Challenger Rome Challenger Jonkoping Challenger Murcia Challenger Prague Challenger Bordeaux Challenger Estoril Open - Estoril ATP Studena Croatia Open Umag - Umag Dallas Challenger Poznan Challenger Dallas Challenger San Juan Challenger Aix En Provence Challenger Bordeaux Challenger Braunschweig Challenger Porto Alegre Challenger Recanati Challenger Furth Challenger Trnava Challenger M15 Antalya Estoril Open - Estoril Belgrade Challenger Montevideo Challenger Le Gosier Challenger Open de Nice Cote d'Azur - Nice Serbia Open - Belgrade Bucaramanga Challenger Rome Challenger BRD Nastase Tiriac Trophy - Bucharest Estoril Open - Estoril Serbia Open - Belgrade VTR Open - Vina del Mar Copa Claro - Buenos Aires Bogota Challenger Itajai Challenger ATP Vegeta Croatia Open - Umag Brasil Open - Sao Paulo Portugal Open - Oeiras Mercedes Cup - Stuttgart Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag BMW Open - Munich Poprad Tatry Challenger Tunis Challenger Erste Bank Open - Vienna Santiago Challenger Millennium Estoril Open - Estoril Las Franquesas del Valles Challenger Sao Paulo Challenger SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Gerry Weber Open - Halle Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open Parc - Lyon Konzum Croatia Open - Umag Delray Beach International Tennis Championships - Delray Beach Estoril Open - Estoril Generali Open - Kitzbuhel Brasil Open - Sao Paulo Panama City Challenger Santos Challenger Lexington Challenger Poznan Challenger Zagreb Challenger Todi Challenger Open Parc - Lyon U.S. National Indoor Tennis Championships - Memphis Tata Open Maharashtra - Pune Buenos Aires Challenger Estoril Open - Estoril Irving Challenger Genova Challenger VTR Open - Vina del Mar Brasil Open - Sao Paulo Estoril Challenger Casablanca Challenger Rio De Janeiro Challenger Delray Beach International Tennis Championships - Delray Beach Genova Challenger Montevideo Challenger Lisbon Challenger Portugal Open - Oeiras Porto Alegre Challenger Caltanissetta Challenger Bordeaux Challenger Buenos Aires Challenger Kosice Challenger M25 Kursumlijska Banja Marburg Challenger Delray Beach Open - Delray Beach Sibiu Challenger Buenos Aires Challenger Quimper Challenger Cherbourg Challenger Winston-Salem Open - Winston-Salem Panama City Challenger Campinas Challenger Erste Bank Open - Vienna Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha Abierto Mexicano Telcel - Acapulco ATP Challenger Tour Finals Sao Paulo Challenger Braunschweig Challenger US Men's Clay Court Championship - Houston Bordeaux Challenger Braga Challenger BB&T Atlanta Open - Atlanta Lima Challenger Lima Challenger Millennium Estoril Open - Estoril Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasov Challenger Brasil Open - Sao Paulo Open de Nice Cote d'Azur - Nice M15 Bol Padova Challenger Sopot Challenger Napoli Challenger Plava Laguna Croatia Open - Umag Tampere Challenger Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Biella Challenger Apia International - Sydney Garanti Koza Sofia Open - Sofia Campinas Challenger Forli 4 Challenger Millennium Estoril Open - Estoril Blois Challenger Bangkok Challenger Tampere Challenger Campinas Challenger Szczecin Challenger Sao Paulo Challenger Tampere Challenger Sopot Challenger Lisbon Challenger Brasil Open - Sao Paulo Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Buenos Aires Challenger Guayaquil Challenger Bet-at-home Open - Hamburg Brescia Challenger Banja Luka Challenger Salzburg-Anif Challenger Iasi Challenger Generali Open - Kitzbuhel Gran Canaria Challenger Sibiu Challenger Barcelona Open Banc Sabadell - Barcelona Braga Challenger 2007 Knoxville Challenger - Knoxville Como Challenger Seville Challenger Braga Challenger Parma Challenger Bengaluru Challenger Skopje Challenger Sanremo Challenger Millennium Estoril Open - Estoril Buenos Aires Challenger Bordeaux Challenger Pilot Pen Tennis - New Haven Tenerife 3 Challenger Madrid Challenger Porto Challenger Girona Challenger M25 Mataro Millennium Estoril Open - Estoril Abierto Mexicano - Los Cabos Brasil Open - Sao Paulo Montevideo Challenger Barletta Challenger Tallahassee Challenger Monterrey Challenger Waco Challenger Antalya Challenger Zadar Challenger Barletta Challenger Mauthausen Challenger Santo Domingo Challenger Millennium Estoril Open - Estoril Seville Challenger Banja Luka Challenger BRD Nastase Tiriac Trophy - Bucharest Milan Challenger Millennium Estoril Open - Estoril Copa Claro - Buenos Aires Lyon Challenger Shenzhen Open - Shenzhen Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati Miami Open - Miami Miami Open - Miami Sony Ericsson Open - Miami Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai Campbells Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Aircel Chennai Open - Chennai SkiStar Swedish Open - Bastad Sony Open Tennis - Miami U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris French Open - Paris Wimbledon - London Wimbledon - London Wimbledon - London U.S. Open - New York U.S. Open - New York U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London Mutua Madrid Open - Madrid Australian Open - Melbourne Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 M15 Kursumlijska Banja Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group I, PO, POR-SLO 5-0 Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) Wimbledon (juniors) M25 Santa Margherita di Pula Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 All Lower level tournaments Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-AUT 1-4 French Open (juniors) Olympics - Rio de Janeiro M25 Santa Margherita di Pula Valencia Challenger